Masking tool

ABSTRACT

A system for controlling effects performed on an image includes a digital camera having a display that displays the image. Masking tools position graphical representations on the display to define a portion of the image that is altered when the effects are subsequently applied to the image. The several masking tools may be combined to form a single masking tool.

CROSS REFERENCES RELATED TO THE APPLICATION

This application is a continuation of U.S. patent application Ser. No.12/547,393 filed Aug. 25, 2009, now U.S. Pat. No. ______, which is acontinuation of U.S. patent application Ser. No. 11/948,889 filed Nov.30, 2007, now U.S. Pat. No. 7,587,100, which is a continuation of U.S.patent application Ser. No. 11/273,055 filed Nov. 14, 2005, now U.S.Pat. No. 7,391,929, which is a continuation in part of U.S. patentapplication Ser. No. 09/782,235 filed Feb. 12, 2001, now U.S. Pat. No.7,027,663, which claims the benefit of U.S. Provisional Application No.60/181,778 filed Feb. 11, 2000.

FIELD OF THE INVENTION

This invention relates generally to graphical editing technologies, andmore particularly, to controlling applications of effects by usingmasking tools.

BACKGROUND OF THE INVENTION

With the increasing popularity of computing and the use of the Internetin many fields, the ability to control computers and similar devices ina simple, convenient manner has become extremely important. However,existing interfaces to computers and similar devices can be cumbersomeand complicated.

In particular, many users of graphical editing programs would benefitfrom an improved interface used to control the application of variousspecial effects onto an image. For example, graphical editing programswould benefit from improved control of the application of the effectswith respect to the intensity and the area of the image that is beingsubjected to modification by application of the effect

Some software applications implement mask tools that are similar toapplying a cut out or stencil to protecting area of the underlyingimage. They also implement control that applies effects only to alocalized area, similar to a street paint tool.

BRIEF DESCRIPTION OF THE DRAWINGS

The embodiments of the invention may best be understood by referring tothe following description and accompanying drawings that are used toillustrate these embodiments.

FIG. 1A illustrates an exemplary system implemented with an embodimentof the invention.

FIG. 1B illustrates a network overview of the present invention.

FIG. 1C illustrates a basic processor of the present invention.

FIG. 2A illustrates an embodiment of a masking tool operating inaccordance with the invention.

FIG. 2B illustrates another embodiment of a masking tool operating inaccordance with the invention.

FIG. 2C illustrates another embodiment of a masking tool operating inaccordance with the invention.

FIG. 3 illustrates an exemplary embodiment of a selection process forthe masking tool of FIGS. 2A-2C.

FIG. 4 illustrates an exemplary embodiment of a customization processfor the masking tool of FIGS. 2A-2C.

FIG. 5 illustrates a flow diagram of one embodiment.

DETAILED DESCRIPTION

In the following detailed description of the embodiments of theinvention, references are made to the accompanying drawings in whichlike references indicate similar elements, in which, is shown by way ofillustration of specific embodiments in which the invention may bepracticed. These embodiments are described in sufficient detail toenable those skilled in the art to practice the invention and it is tobe understood that other embodiments may be utilized and that logical,mechanical, electrical and other changes may be made without departingfrom the scope of the present invention. The following detaileddescription is, therefore, not to be taken in a limiting sense, and thescope of the present invention is defined only by the appended claims.

A. General System Architecture

Beginning with an overview of the operation of the invention, FIG. 1Aillustrates a system 100 which can control the effects of imagemanipulation according to one embodiment of the present invention.System 100 includes server 101 and one or more clients 103. Stored inmemory resident within server 101, a typical software application 104 isan image-editing package adapted to manipulate images provided by client103. The operations of software application 104 may be controlled byserver 101 or through control information from client 103. Within thesoftware application 104, an effects block 110 and a masking tool block112 reside. These “blocks” denote a collection of one or moreinstructions, including but not limited to a routine, function, or anyother process. The effects block 110 applies a specific effect to theimage and the masking tool block 112 selectively limits the area of theimage which is modified by the effects block 110.

As shown in FIG. 1B, client 103 may establish communications with server101 through a wide area network. For instance, client 103 maycommunicate directly with an Internet Service Provider (ISP) thatcommunicates with server 101.

A client 103 represents any device that may enable user's online accessto information. Illustrative examples of a “client” may include, but arenot limited or restricted to a digital camera, a stand-alone device toview images inclusive of a kiosk, a hand-held image viewing device(e.g., portable computer, personal digital assistant, iPOD® or othermusic/video/image viewing device, etc.), a camera cellular phone, andthe like. In this embodiment, client 103 may provide a user interface tocommunicate information to the user. It should be noted that althoughFIG. 1A illustrates only two modules performing the above functionality,more or less modules may be used to perform this functionality.

One exemplary embodiment of client 103 is a digital camera 140 that isillustrated in FIG. 1C. For this embodiment, digital camera 140 includesa processor 150, a memory 155 and an input/output device 160 coupled toa bus 165. Input/output device 160 includes an interface to establish awired or wireless communication path with server 101. Memory 155 isconfigured to store images that are captured by digital camera 140 andprocessed by processor 150.

Memory 155 encompasses various types of computer readable media,including any type of storage device that is accessible by processor150. One of the skilled the art will immediately recognize that the term“computer readable media” encompasses any suitable storage medium suchas a programmable electronic circuit, any type of semiconductor memorydevice such as a volatile memory (e.g., random access memory, etc.) ornon-volatile memory (e.g., read-only memory, flash memory, etc.), a harddrive disk, or any portable storage such as a floppy diskette, anoptical disk (e.g., compact disk or digital versatile disc “DVD”),memory stick, a digital tape or the like.

Of course, it is appreciated that digital camera 140 may be controlledby operating system software including instructions executed byprocessor and stored in internal memory. Also, software application 104may be implemented within memory 155 or another memory component that isintegrated within processor 150 or external to processor 150 in lieu ofor in addition to such storage within server 101. Thus, the digitalcamera 140 may perform masking operations and applying effects to theimage directly.

As a first illustrative example, software application 104 may be loadedinto server 101 to perform the masking and application of effects on animage as described below. These masking operations are controlled by thedigital camera 140. According to a second illustrative example, thesoftware application 104 may be loaded within digital camera 140 toperform the masking and application of effects on an image, but themasking tool is fetched by digital camera 140 from memory implementedwithin server 101. According to a third illustrative embodiment, ahigh-resolution image targeted for manipulation is loaded on server 101while a low-resolution image loaded in digital camera 140. In responseto selected operations on the low-resolution image, correspondingoperations are performed on the high-resolution image.

B. Embodiments of the Masking Tool

FIG. 2A illustrates a first embodiment of a masking tool as described inblock 112 of FIG. 1A. Display 200 represents a sample screen whileutilizing the software application 104 (FIG. 1A). A masking tool 210 isshown on the display 200, where masking tool 210 features one or moregraphical representations. These graphical representations may be have apredetermined shape and size and/or may be set by the user to produce acustomizable graphical representation. The predetermined forms ofmasking tool 210 may be preloaded into the digital camera duringmanufacturer or downloaded from a source over a network connection. Thecustomized graphical representations of masking tool 210 may be storedwithin digital camera upon completion by the user, and may betransmitted to the server 101 for storage.

For instance, as shown in FIG. 2A, the embodiment of masking tool 210 istranslucent and is defined by the clear outline. The masking tool 210allows a selective application effects from the effects block 110 (FIG.1A) by moving the masking tool 210 with respect to a static image asshown on the display 200. The portion of the static image as shown onthe display 200 which is within the masking tool 210 is not modified bythe application of the effects. This static image may be still image oran image from a video stream.

Furthermore, the masking tool 210 is capable of being dynamically movedwith respect to the static image during the application of the effects.This allows the user to selectively apply the effect by interactivelymoving the mask tool simultaneously while applying the effect.

Another embodiment includes a masking tool that is able to interactdirectly with a localized image editing operation. For example, themasking tool may become entirely transparent in the immediate area wherea user is currently applying an image effect. This allows the user tosee the entire area that is mask without a mask or line obstructing theimmediate work area.

FIG. 2B illustrates a second embodiment of masking tool 215 representedon display 200. Masking tool 215 shows the portion within masking tool215 to have a cross-hatched shading. Any type of shading can be utilizedto illustrate the portion within the masking tool.

FIG. 2C illustrates a third embodiment of the masking tool representedon display 200. According to this embodiment, the shape of the maskingtool can be easily created and modified. For example, within the display200 there are a first masking tool 220, a second masking tool 230 and athird masking tool 240. Each of the first, second and third maskingtools (220, 230, and 240) have differing sizes and may functionindependently or may be combined to form a single masking tool.Naturally, this specific example utilizes three portions to formindependent or combined masking tools and any number of portions may beutilized to accomplish the same.

Like masking tools that take different sizes, masking tools may alsotake any multitude of shapes. The masking tools may simulate the use ofa fixed edge such as a French Curve. The shape of the mask tool isinfinitely changeable. Furthermore, the user may mask as much area ofthe image as desired and perform a global image effect on the entireimage while protecting portions of the image from the image effects withthe masking tools.

FIG. 3 illustrates an exemplary embodiment of a screen display 300featuring icons 310 representing various shapes for the masking tool.According to this embodiment, upon execution, a masking tool 320 isselected from icons 310 corresponding to a plurality of masking toolwith graphical representations, namely different fixed shapes and sizes.Such selection may be accomplished by cycling through a series ofmasking tool icons 310 displayed on screen display 320 of a digitalcamera 330 using at least one control button 340 of digital camera 330.Alternatively, although not shown, such selection may be accomplishedthrough a menu displayed on screen display 300 of digital camera 330,where the menu illustrates images or lists textual descriptions of theplurality of masking tool types. The selection of the menu entry is alsocontrolled by control button(s) 340.

FIG. 4 illustrates an exemplary embodiment of customization of themasking tool is shown. Display 200 of client 103 features an image 400.Using a stylus 410, for example, a pattern 420 is traced over image 400illustrated by display 200. Upon completion of an enclosed pattern, adetermination is made whether the area within the enclosed pattern 420is selected to be the masking tool, illustrated in a transparent form,or whether the area outside the enclosed pattern 420 constitutes themasking tool. For instance, upon touching stylus 410 within a first area430, namely the area within enclosed pattern 420 is considered to be themasking tool. As a result, when applied, an effect will be applied tothe portion of image 400 outside first area 430 while no effect isapplied inside first area 430 outlined by the masking tool. Thetransparent nature of the masking tool allows the user to see the lackof effects applied to the masked area. However, upon touching the styluswithin a second area 440, namely the area outside enclosed pattern 420,any effect will be applied to the portion of image 400 inside first area430 because the masking tool now covers second area 440.

C. Operations of the Masking Tool

FIG. 5 illustrates a flow diagram. At block 500, the applicationsoftware 104 (FIG. 1A) is initiated. The user may build, create, and/ormodify the shape and size of the masking tool in Block 510. The user mayposition the masking tool relative to the static image (Block 510). Theuser may position the masking tool relative to the static image (Block520). The user may apply the image effect selectively to the image thatis not masked by the masking tool (Block 530). The user may dynamicallyreposition the masking tool while simultaneously applying the imageeffect (Block 540).

Although specific embodiments have been illustrated and describedherein, will be appreciated by those of ordinary skill in the art thatany arrangement which is calculated to achieve the same purpose may besubstituted for specific embodiments shown. This application is intendedto cover any of the adaptations of variations of the present invention.

The terminology used in this application with respect to networkarchitecture is meant to include all client/server environments.Therefore it is manifestly intended that this invention be limited onlyby the following claims and equivalents thereof.

1. A device for applying effects on an image, comprising: a display; anda masking tool comprising a plurality of graphical representations,wherein a portion of the image is altered when an effect is applied tothe image, wherein the effect applied to the image utilizing an imageresolution on the display uses a display resolution, further wherein theeffect applied to the displayed image using the display resolution iscorrespondingly performed on the cloud server on the image using theimage resolution.
 2. (canceled)
 3. The device according to claim 1further comprising a second connection to at least one additionaldevice, wherein the altered image is copied from a cloud server to theat least one additional device.
 4. (canceled)
 5. The device according toclaim 1, wherein the image resolution is a higher resolution than thedisplay resolution.
 6. The device according to claim 1, wherein themasking tool comprises a plurality of masking tools.
 7. The deviceaccording to claim 1, wherein the effect is generated by manuallydefining at least a portion of the image.
 8. The device according toclaim 7 wherein the effect is applied inside the manually definedportion of the image.
 9. The device according to claim 7 wherein theeffect is applied outside the manually defined portion of the image. 10.The device according to claim 1 wherein the effect further adjusts asize and/or shape of the portion of the image.
 11. (canceled)
 12. Amethod of masking programmed in a non-transitory memory of a devicecomprising: positioning the masking tool and establishing a maskedportion of an image; and altering a portion of the image when an effectis applied to the image, wherein when the effect is applied to theimage, a corresponding effect is applied to the image stored on a cloudserver in communication with the device.
 13. The method according toclaim 12 wherein the masking tool is translucent.
 14. The methodaccording to claim 12 wherein the positioning of the masking toolincludes positioning the masking tool over the masked portion of theimage displayed on the device.
 15. (canceled)
 16. The method accordingto claim 15, wherein the image on the device has an image resolution,and the image on the cloud server has a display resolution, and whereinthe image resolution is a lower resolution than the display resolution.17. A system comprising: a remote device; and a connected device incommunication with the remote device, the connected device being adaptedto affect an image by controlling a position of a graphicalrepresentation to define a portion of the image being altered when aneffect is applied to the image.
 18. The system according to claim 17further comprising the remote device implemented with a software that,when executed, performs masking and application of the effect on theimage.
 19. The system according to claim 17, wherein the remote deviceis loaded with the image having an image resolution level and theconnected device being loaded with the image having a display resolutionlevel lesser in resolution that the image resolution level, wherein theeffect applied to the image having the display resolution level undercontrol of the connected device causes a corresponding effect to beperformed on the remote device on the image having the image resolutionlevel.
 20. The system according to claim 17, wherein the portion of theimage inside the graphical representation is precluded from beingaltered.
 21. The system according to claim 17, wherein the portion ofthe image outside the graphical representation is precluded from beingaltered.
 22. The system according to claim 17, further comprising atleast one additional device, wherein the altered image is copied fromthe remote device to the at least one additional device.
 23. The deviceaccording to claim 4, wherein the image resolution is a lower resolutionthan the display resolution.
 24. The method according to claim 15,wherein the image resolution is a higher resolution than the displayresolution.